/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package quizzempire.model;

import java.util.Observable;;
import quizzempire.model.statemachine.State;

/**
 *
 * @author Victor
 */
public abstract class IModel extends Observable {

    public abstract String getAbout();
    public abstract void startGame();
    public abstract State getState();

    public abstract void restart();

    public abstract void setName(String text);
    public abstract void setAutor(String text);
    public abstract void setDescription(String text);
    public abstract void setGenre(String text);
    public abstract void setPassword(String pass);
    public abstract void setNQuestions(int[] nQuestions);
    public abstract void setDifficulties(boolean[] difficulties);
    public abstract void editQuestons();

    public abstract IQuizz getQuizzViewer();
}
